﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;

namespace Sofire.Data.XSql
{
    /// <summary>
    /// 表示 XSql 的类型。
    /// </summary>
    public enum XSqlType
    {
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlNode"/> 节点。
        /// </summary>
        XSql,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlProcedureNode"/> 节点。
        /// </summary>
        Procedure,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlExpressionNode"/> 节点。
        /// </summary>
        Expression,

        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlIfNode"/> 节点。
        /// </summary>
        If,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlElseNode"/> 节点。
        /// </summary>
        Else,

        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlSwitchNode"/> 节点。
        /// </summary>
        Switch,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlCaseNode"/> 节点。
        /// </summary>
        Case,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlDefaultNode"/> 节点。
        /// </summary>
        Default,

        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlForeachNode"/> 节点。
        /// </summary>
        Foreach,

        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlIncludeNode"/> 节点。
        /// </summary>
        Include,

        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlTrimNode"/> 节点。
        /// </summary>
        Trim,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlParametersNode"/> 节点。
        /// </summary>
        Parameters,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlParameterNode"/> 节点。
        /// </summary>
        Parameter,
        /// <summary>
        /// 表示一个 <see cref="Sofire.Data.XSql.IXSqlTextNode"/> 节点。
        /// </summary>
        Text,
        ///// <summary>
        ///// 表示一个 <see cref="Sofire.Data.XSql.IXSqlTestNode"/> 节点。
        ///// </summary>
        //Test,
    }

}
